Skip to content

Redesign the shell on the Xylem design system#53

Merged
GordonBeeming merged 14 commits into
mainfrom
gb/shell-redesign-xylem
Jul 10, 2026
Merged

Redesign the shell on the Xylem design system#53
GordonBeeming merged 14 commits into
mainfrom
gb/shell-redesign-xylem

Conversation

@GordonBeeming

Copy link
Copy Markdown
Owner

Summary

  • Migrates the whole app shell to the "IDE UX redesign" Claude Design project: Xylem Signal tokens (new light + dark themes), self-hosted Space Grotesk / IBM Plex Mono, and an activity rail (Files / Search / Source control / theme toggle / settings). The sidebar header collapses to a single row with a workspace menu, search unifies behind names|contents scope chips, tabs become pills, the statusbar slims down and gains a branch pill, and the settings + About dialogs pick up their 1e / 4b restyles.
  • Promotes gitCommit and gitAttribution out of Preview Features into a permanent Git settings category — both default on, both toggleable, saved overrides migrate before the old flag ids are pruned. Adds a persisted theme preference (system/light/dark) and a code font setting (IBM Plex Mono / system mono, editor surfaces only).
  • Redesigns the commit info popover: sha chip + timestamp header, bold first line with the rest of the message in a scrollable block (capped at 400px), gravatar avatars with a monogram fallback, and an Open in GitHub footer only when a remote exists.
  • Adopts the new "ıde" wordmark icon everywhere (app icons, favicons, About), swaps the README banner for an animated blinking-caret SVG, and adds theme-matched app screenshots. Dev server moves off Tauri's shared port 1420 to 14717, and run.sh now clears stale listeners itself.

Test plan

  • npm test — 401 passing
  • npx tsc --noEmit, npm run build, npm run budget, npm run theme:check, npm run tauri:check
  • cargo fmt --check, cargo clippy --all-targets -- -D warnings, cargo test — 232 passing
  • Drove the dev app against a scratch repo: rail navigation, search scopes, selective commit + sync panel, theme cycling, settings (Git category, code font live switch), About dialog, commit popover with a real gravatar
  • Post-merge glance at the README on github.com (animated SVG + light/dark screenshot swap render via camo)

@GordonBeeming GordonBeeming marked this pull request as ready for review July 10, 2026 14:14
Copilot AI review requested due to automatic review settings July 10, 2026 14:14

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a major shell redesign featuring a new activity rail, a unified search panel, self-hosted fonts, and a code font setting. It also graduates Git commit and attribution from preview flags to standard settings, adds support for multi-line commit bodies and author avatars, and updates the local development port to 14717. The reviewer feedback focuses on optimizing string slicing in the Rust backend, ensuring Unicode-aware initials extraction, safeguarding WebCrypto access, and improving accessibility for the activity rail and custom radio buttons.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread src-tauri/src/git_attribution.rs
Comment thread src/App.tsx
Comment thread src/App.tsx
Comment thread src/App.tsx
Comment thread src/App.tsx Outdated
@GordonBeeming GordonBeeming marked this pull request as draft July 10, 2026 14:17

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates the IDE’s shell/UI to the Xylem design system (themes, typography, activity rail, updated dialogs/popovers) while also graduating Git commit/attribution from preview flags into persisted Git settings and moving the dev server off Tauri’s shared default port.

Changes:

  • Rebuilds the app chrome: activity rail navigation, unified search panel with scopes, updated tabs/status bar, and refreshed Settings/About/commit popover UI.
  • Promotes gitCommit / gitAttribution from preview feature flags into persisted Git settings (with migration from old overrides) and adds persisted theme + code-font preferences.
  • Updates dev tooling + assets: Vite/Tauri dev port to 14717, scripts updated accordingly, new wordmark-based icon assets, and README/design doc refresh.

Reviewed changes

Copilot reviewed 27 out of 94 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
vite.config.ts Moves Vite dev server to port 14717 with rationale.
src/tauri.ts Adds theme/code-font prefs + Git setting toggles to persisted snapshot; extends commit info shape with body.
src/tauri.test.ts Updates dev-port expectations; adds coverage for new persisted fields + commit body validation + code font sanitization.
src/systemTheme.ts Adds shared localStorage key constant for pre-paint theme bootstrap.
src/fonts/README.md Documents self-hosted font rationale + licensing.
src/featureFlags.ts Removes graduated Git flags from the preview flag registry.
src/featureFlags.test.ts Updates tests for reduced flag set and behavior.
src/editorTheme.ts Adds code-font stacks and applies them to editor theme extensions.
src/editorTheme.test.ts Adds tests for code-font stack mapping and defaults.
src/EditorPane.tsx Threads codeFont through editor initialization and theme extensions.
src/diffTheme.ts Updates token variable names to match new design tokens.
src/DiffPane.tsx Threads codeFont through diff view theme extensions.
src/App.tsx Major shell redesign (rail/search/settings/about/popovers) + new persisted settings plumbing + gravatar/monogram avatars.
src/App.test.tsx Updates/expands interaction tests for rail navigation, theme pinning, Git settings, code font, and commit popover behavior.
src-tauri/tauri.conf.json Updates Tauri devUrl to port 14717.
src-tauri/src/lib.rs Adds new persisted settings fields, sanitization, and migration from old Git preview-flag overrides.
src-tauri/src/git_attribution.rs Splits commit message into summary/body and returns body to frontend.
scripts/validate-tauri-config.mjs Enforces the new devUrl/port value.
scripts/install-macos-finder-quick-action.sh Updates frontend URL + listener checks to port 14717.
scripts/bundle-budget.mjs Adjusts CSS budget for new chrome/styling.
run.sh Updates dev-port handling and adds stale-process cleanup logic.
README.md Updates banner/icon and adds theme-swapped screenshots.
public/icon.svg Replaces icon with new “ıde” wordmark mark.
index.html Adds pre-paint theme pinning via localStorage preference.
docs/development.md Updates feature-flag lifecycle example to reflect graduated Git flags.
design.md Updates icon design spec and related notes.
assets/README.md Updates asset pack documentation for new icon set.
assets/mark/mark.svg Removes retired mark asset.
assets/mark/mark-mono.svg Removes retired mono mark asset.
assets/app-icon/icon.svg Updates app-icon master SVG.
assets/app-icon/icon-square.svg Updates square icon variant.
assets/app-icon/icon-fullbleed.svg Removes retired fullbleed variant.
assets/app-icon/icon-animated.svg Adds animated caret SVG used for README/web presentation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread run.sh
Comment thread src/App.tsx

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 35308918e4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/App.tsx
Comment thread run.sh
@GordonBeeming GordonBeeming marked this pull request as ready for review July 10, 2026 14:22
Copilot AI review requested due to automatic review settings July 10, 2026 14:23

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 35308918e4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/App.tsx
Address reviewer comments:
- slice the commit body past the first line instead of collect/join
- guard WebCrypto lookup and cap the avatar hash cache
- Unicode-aware author initials
- announce the pending-change count on the Source control rail item
- roving tabindex + arrow keys for the code font radiogroup
- stop a leftover name filter from silently narrowing the Files tree

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 27 out of 94 changed files in this pull request and generated 5 comments.

Comment thread index.html Outdated
Comment thread src/systemTheme.ts
Comment thread run.sh
Comment thread src/tauri.test.ts
Comment thread vite.config.ts
Copilot AI review requested due to automatic review settings July 10, 2026 14:29

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 27 out of 94 changed files in this pull request and generated 2 comments.

Comment thread src/tauri.ts
Comment thread run.sh
Copilot AI review requested due to automatic review settings July 10, 2026 14:37

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 28 out of 95 changed files in this pull request and generated 1 comment.

Comment thread src/App.tsx
Address reviewer comments:
- complete the optional chaining on both matchMedia reads
- only mirror the theme preference to localStorage after the persisted snapshot loads
- add the missing sanitizeThemePreference unit test
- update stale 1420 references in the Rust CORS tests and comment
Copilot AI review requested due to automatic review settings July 10, 2026 14:42

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 29 out of 96 changed files in this pull request and generated 1 comment.

Comment thread src/App.tsx
Copilot AI review requested due to automatic review settings July 10, 2026 14:49

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 29 out of 96 changed files in this pull request and generated no new comments.

@GordonBeeming GordonBeeming merged commit b2e1dca into main Jul 10, 2026
3 of 5 checks passed
@GordonBeeming GordonBeeming deleted the gb/shell-redesign-xylem branch July 10, 2026 15:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants